package com.ruoyi.business.service;

import com.ruoyi.business.domain.WxUserAddress;

import java.util.List;

/**
 * 微信小程序用户收货地址Service接口
 */
public interface IUserAddressService {
    /**
     * 查询用户收货地址列表
     * 
     * @param openid 微信用户openid
     * @return 用户收货地址集合
     */
    List<WxUserAddress> selectUserAddressList(String openid);
    
    /**
     * 查询用户默认收货地址
     * 
     * @param openid 微信用户openid
     * @return 默认收货地址
     */
    WxUserAddress selectDefaultUserAddress(String openid);

    /**
     * 新增用户收货地址
     * 
     * @param address 用户收货地址
     * @return 结果
     */
    int insertUserAddress(WxUserAddress address);

    /**
     * 修改用户收货地址
     * 
     * @param address 用户收货地址
     * @return 结果
     */
    int updateUserAddress(WxUserAddress address);

    /**
     * 删除用户收货地址信息
     * 
     * @param addressId 用户收货地址主键
     * @return 结果
     */
    int deleteUserAddressById(Long addressId);
    
    /**
     * 批量删除用户收货地址
     * 
     * @param addressIds 需要删除的地址ID
     * @return 结果
     */
    int deleteUserAddressByIds(Long[] addressIds);
    
    /**
     * 设置默认地址
     *
     * @param addressId 地址ID
     * @return 结果
     */
    int setDefaultAddress(Long addressId);

    WxUserAddress selectUserAddressById(Long addressId);
}
